home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / pp / pp-6.0 / doc / unix-niftp / unix-niftp-pp.ms < prev    next >
Encoding:
Text File  |  1991-09-18  |  8.1 KB  |  259 lines

  1. .ds Un \s-2\fIUNIX-NIFTP\fP\s+2
  2. .de Eg
  3. .sp
  4. .in +5
  5. .nf
  6. ..
  7. .de Ee
  8. .sp
  9. .fi
  10. .in -5
  11. ..
  12. .de Ts
  13. .in +5
  14. .sp
  15. .nf
  16. ..
  17. .de Te
  18. .sp
  19. .in -5
  20. .fi
  21. ..
  22. .TL
  23. Configuring \*(Un for use with PP.
  24. .AU
  25. Julian Onions 
  26. J.Onions@xtel.co.uk
  27. .AI
  28. X-Tel Services Ltd
  29. Nottingham University
  30. Nottingham NG7 2RD
  31. .SH
  32. Introduction
  33. .LP
  34. This short note is intended to be a stop-gap that covers what you need
  35. to know to install \*(Un for operation with PP. It is not
  36. intended to be a tutorial on \*(Un, partly because I don't know enough
  37. and partly because I don't have time. 
  38. .LP
  39. The \*(Un package is powerful and has many options, this note is not
  40. meant to be exhaustive or to even try covering all options. It is
  41. simply to get you started. There are many improvements and different
  42. configurations that you could have, but to discover these you will
  43. have to read the README files, the code and ask on the unix-niftp list
  44. (unix-niftp@cs.nott.ac.uk \- unix-niftp-request@cs.nott.ac.uk to join)..
  45. .SH
  46. Compilation
  47. .LP
  48. Currently, both PP and \*(Un think they are in charge of compilation,
  49. therefore there is a slight bootstrap problem. The best method
  50. currently therefore is the following.
  51. .IP 1.
  52. Compile PP without the greybook channel. This is done by not
  53. specifying \*Qgrey\*U in the OPTIONALCHANS variable in Make.defs.
  54. .IP 2.
  55. Compile \*(Un
  56. .IP 3.
  57. Compile PP with the greybook channel (e.g. add it back to OPTIONALCHANS).
  58. .LP
  59. To configure and compile, \*(Un, you basically run \fIConfigure\fP and
  60. answer the questions it asks. Make sure you request use of PP in the
  61. unspooled mode. Other questions such as the place for binaries etc are
  62. up to you. if you don't understand the question \fIConfigure\fP is asking,
  63. hit return and it will normally \*Qdo the right thing\*U.
  64. .Eg
  65. % sh Configure
  66. ... lots of questions ...
  67. .Ee
  68. .LP
  69. Once the configuration process is over, type \fImake\fP and wait.
  70. .Eg
  71. % make
  72. .Ee
  73. There should be no problems at this stage.
  74. .LP
  75. After this completes, you should next type \*Q\fImake fullinstall\fP\*U
  76. which should install everything in the correct place. It will also ask
  77. you for a master password. This is only used for ftp transfers, and
  78. you can type anything you like here if you are going to  using
  79. \*(Un for PP mail only. Otherwise you should choose a good password,
  80. and forget it!
  81. .Eg
  82. % make fullinstall
  83. .Ee
  84. .SH
  85. Configuring the runtime system
  86. .LP
  87. The next step is to configure the run time support system and database
  88. that \*(Un needs.
  89. This consists of first creating a tailor file (usually stored in
  90. /etc/niftptailor) and secondly building a dbm database of hosts.
  91. .SH 2
  92. Tailoring the system.
  93. .LP
  94. A sample tailor file can be found in Appendix A. However, the
  95. necessary lines you will need are the following.
  96. .Eg
  97. QUEUE PP level=7,prog=psun
  98. .Ee
  99. This line defines the PP queue. The name \*QPP\*U is what PP will use as
  100. its queue name. The level is for logging in the niftp logs. Suitable
  101. levels vary from \*Q1\*U, minimal logging, through \*Q7\*U - some logging,
  102. to \*Q-1\*U - all logging.
  103. The prog bit is superfluous, but doesn't hurt.
  104. .Eg
  105. NET janet queue=qj,address="000021001029/%E%X%D/%T"
  106. .Ee
  107. This line identifies the network \*Qjanet\*U for outgoing calls.
  108. When the PP greybook channel makes a call, it consults the info field
  109. of the channel to determine the network. This is used to work out what
  110. address to use in outgoing calls.
  111. The queue key sets the queue, but I don't know why.
  112. The address key/value sets up the calling and called addresses
  113. respectively. These are constructed in a printf like manner with
  114. literal characters copied and %'s marking substitutions.
  115. The following substitutions are legal, 
  116. but the default above is suitable - with the appropriate DTE of
  117. course. 
  118. .Ts
  119. .ta \w'%X\0\0'u
  120. %E    The relevant YBTS string for the calling address (e.g. FTP.MAIL)
  121. %X    Separator between calling and called address
  122. %D    Destination DTE number
  123. %T    Destination YBTS string (e.g. FTP, FTP.MAIL)
  124. %O    The variable set by OURNAME.
  125. %P    pink book context
  126. .Te
  127. So, the above string with DTE of 00000511160005 and a YB string of
  128. UCL-CS.FTP.MAIL we would generate
  129. .Ts
  130. .ta \w'calling address:\0\0'u
  131. calling address:    000021001029/FTP.MAIL
  132. called address:    00000511160005/UCL-CS.FTP.MAIL
  133. .Te
  134. .Eg
  135. LISTEN pj address="FTP.MAIL",level=7,prog=qsun,channel=janet
  136. .Ee
  137. This line registers a listener for incoming mail. The address,
  138. \*QFTP.MAIL\*U is not explicitly used in this situation -0 but is a
  139. useful reminder. The level specifies a logging level of \*Q7\*U, and
  140. claims to be from the janet network. This implies that it will be
  141. channel \*Qgb-janet\*U when passing on to PP.
  142. .LP
  143. This is all that is essential for PP to make use of \*(Un. There are
  144. some external things to set up as explained later however.
  145. However, there are a number of useful variables you can set that help
  146. if you wish to move things around (such as log directories for
  147. example). Some of the more useful ones are given in Appendix B.
  148. .SH 2
  149. Building the database.
  150. .LP
  151. The easiest way of building the database is with the c-nrs program. In
  152. fact, this is so easy that I'm not going to describe other methods!
  153. So, first get hold of the c-nrs package and build that. Once this is
  154. done, you can then generate the \*(Un database by the following
  155. commands.
  156. .Eg
  157. nrs dbm1.cf > dbm1
  158. nrs dbm1.cf 'output reverse' >> dbm1
  159. dbencode < dbm1
  160. .Ee
  161. What could be simpler!
  162. .SH
  163. Testing the system for outgoing message.
  164. .LP
  165. With all this done, the system should now work for outgoing calls.
  166. Make sure you have done a \*Qmake install\*U in PP's Chans/grey
  167. directory to get the greybook channel installed. Now mail a message to
  168. a host that makes use of the grey book channel and see if it works.
  169. If it doesn't you will hopefully get a useful diagnostic. This will
  170. appear usually in either the PP log directory in a file such as
  171. \*Qgreyout\*U or in the \*(Un log directory in \*Qlog.pPP\*U.
  172. .LP
  173. A useful test that things are set up is to run the \*(Un program
  174. \fIlookdbm\fP. This looks up names in the database.
  175. .Eg
  176. % bin/lookdbm uk.ac.ucl.cs
  177. .Ee
  178. This checks that the tailoring is correct and the database is present.
  179. .SH
  180. Setting up the incoming system.
  181. .LP
  182. This is best done by running a daemon such as ybtsd. This daemon is
  183. started at boot time usually and listens for Yellow Book transport
  184. calls. When one is received, it looks at the Yellow Book address and
  185. determines what program to call to process this. This matching up is
  186. done through the file ybts-auth. This is usually in an \*Qetc\*U
  187. directory. It can be /etc/ybts-auth, /usr/local/etc/ybts-auth or
  188. /etc/sunlink/cbs/ybts-auth.
  189. .LP
  190. To configure PP to accept incoming calls you need to do the following.
  191. In the PP chans directory, make a symbolic link from greyin to the
  192. name of the LISTEN name in the \*(Un file. This is \*Qpj\*U in the above
  193. example.
  194. .Eg
  195. % ln -s greyin pj
  196. .Ee
  197. Now arrange for the ybtsd to invoke this process for incoming FTP.MAIL
  198. requests. A suitable line in the ybts-auth file might be
  199. .Eg
  200. /usr/pp/chans/pj:ftp.mail:*
  201. .Ee
  202. The first part being the pathname of the symbolic link you just
  203. created, the second being the YBTS address (ftp.mail) and the third
  204. field saying any calling address is allowed to invoke this.
  205. .LP
  206. This should now be set up to allow incoming and outgoing mail.
  207. .bp
  208. .SH
  209. Appendix A \- sample tailor file
  210. .LP
  211. .Eg
  212. # known about queues 
  213. QUEUE   qj      level=7,prog=psun
  214. QUEUE   PP      level=7,prog=psun
  215.  
  216.  
  217. # various configuration details for each network
  218. NET janet       queue=qj,address="YOUR-DTE-HERE/%E%X%D/%T"
  219.  
  220. # Domains that we know about
  221. DOMAIN  "uk.ac", "uk","uk.co"
  222.  
  223. # The listener information
  224. LISTEN pj address="FTP.MAIL",level=107,prog=qsun,channel=janet
  225. .Ee
  226. .bp
  227. .SH
  228. Appendix B \- useful tailor variables
  229. .LP
  230. The following is a list of the more useful things that you can tailor.
  231. This list is not exhaustive!
  232. .IP BINDIR 10
  233. The directory where binaries private to the \*(Un are looked for.
  234. .Eg
  235. BINDIR /usr/lib/niftp
  236. .Ee
  237. .IP DOMAIN
  238. A list of domain prefixes. When looking for an NRS name, the software
  239. will try adding these names to what it is looking for should the first
  240. lookup fail.
  241. .Eg
  242. DOMAIN "uk.ac", "uk.co"
  243. .Ee
  244. .IP LOGDIR
  245. The directory in which the log files are created and written.
  246. .Eg
  247. LOGDIR /usr/spool/niftp/logs
  248. .Ee
  249. .IP OURNAME
  250. Sets the %O string.
  251. .Eg
  252. OURNAME 000021001029
  253. .Ee
  254. .IP TABLE
  255. The DBM database that contains the NRS name to address translations.
  256. .Eg
  257. TABLE /usr/spool/niftp/nrsdbm
  258. .Ee
  259.